UCF STIG Viewer Logo

Database objects must be owned by database/EDB Postgres Advanced Server principals authorized for ownership.


Overview

Finding ID Version Rule ID IA Controls Severity
V-259238 EPAS-00-003500 SV-259238r938767_rule Medium
Description
Database objects include but are not limited to tables, indexes, storage, stored procedures, functions, triggers, and links to software external to the EDB Postgres Advanced Server, etc. Within the database, object ownership implies full privileges to the owned object, including the privilege to assign access to the owned objects to other subjects. Database functions and procedures can be coded using definer's rights. This allows anyone who utilizes the object to perform the actions as if they were the owner. If not properly managed, this can lead to privileged actions being taken by unauthorized individuals. Conversely, if critical tables or other objects rely on unauthorized owner accounts, these objects may be lost when an account is removed.
STIG Date
EnterpriseDB Postgres Advanced Server (EPAS) Security Technical Implementation Guide 2023-11-20

Details

Check Text ( C-62977r938765_chk )
Review system documentation to identify accounts authorized to own database objects. Review accounts that own objects in the database(s) by running the following SQL command as the "enterprisedb" user:

psql edb -c "SELECT * FROM sys.all_objects;"

If any database objects are found to be owned by users not authorized to own database objects, this is a finding.
Fix Text (F-62886r938766_fix)
Assign ownership of authorized objects to authorized object owner accounts by running the following SQL command for each object to be changed:

ALTER OWNER TO ;

For example: ALTER TABLE my_table OWNER TO APP_USER;